Clicky

Populares aplicaciones de Android están plagadas de vulnerabilidades criptográficas

Crylogger

Crylogger detecta usos indebidos criptográficos en aplicaciones de Android

Investigadores de la Universidad de Columbia han lanzado Crylogger, una herramienta de análisis dinámico de código abierto que muestra qué aplicaciones de Android presentan vulnerabilidades criptográficas.

También la usaron para analizar 1780 populares aplicaciones de Android de Google Play Store, y los resultados fueron abismales:

• Todas las aplicaciones rompen al menos una de las 26 reglas de cifrado
• 1.775 aplicaciones usan un generador de números pseudoaleatorios inseguro (PRNG)
• 1.764 aplicaciones usan una función hash rota (SHA1, MD2, MD5, etc.)
• 1.076 aplicaciones utilizan el modo de operación CBC (que es vulnerable a los ataques de relleno de Oracle en escenarios cliente-servidor)
• 820 aplicaciones utilizan una clave de cifrado simétrica estática (codificada)

reglas criptográficas incumplidas

Sobre Crylogger

Cada una de las aplicaciones probadas con una biblioteca criptográfica instrumentada se ejecutó en Crylogger, que registra los parámetros que se pasan a las API criptográficas durante la ejecución y luego verifica su legitimidad fuera de línea mediante el uso de una lista de reglas criptográficas.

Crylogger en acción

"Los algoritmos criptográficos (cripto) son los ingredientes esenciales de todos los sistemas seguros: las funciones de cifrado y los algoritmos de cifrado, por ejemplo, pueden garantizar propiedades como la integridad y la confidencialidad”, explicaron los investigadores.

"Un uso indebido de la criptografía es una invocación a una API de criptografía que no respeta las pautas de seguridad comunes, como las sugeridas por criptógrafos u organizaciones como NIST e IETF".

Para confirmar que las vulnerabilidades criptográficas marcadas por Crylogger realmente pueden ser explotadas, los investigadores realizaron ingeniería inversa manualmente en 28 de las aplicaciones probadas y encontraron que 14 de ellas son vulnerables a los ataques (aunque los desarrolladores pueden considerar algunos problemas fuera del alcance porque requieren una escalada de privilegios para una explotación efectiva).

Uso recomendado

Comparando los resultados de Crylogger (una herramienta de análisis dinámico) con los de CryptoGuard (una herramienta de análisis estático de código abierto para detectar usos indebidos de cripto en aplicaciones basadas en Java) al probar 150 aplicaciones, los investigadores encontraron que la primera señala algunos problemas que la segunda pasa por alto, y viceversa.

Lo mejor para los desarrolladores sería probar sus aplicaciones con ambas antes de ofrecerlas para descargar, anotaron los investigadores. Además, Crylogger se puede usar para verificar las aplicaciones enviadas a las tiendas de aplicaciones.

"Es difícil usar una herramienta dinámica en una gran cantidad de aplicaciones, pero Crylogger puede refinar los usos indebidos identificados con el análisis estático porque, por lo general, muchos de ellos son falsos positivos que no se pueden descartar manualmente en una gran cantidad de aplicaciones", concluyeron [PDF].

Hallazgos preocupantes

Como se señaló al principio de este artículo, demasiadas aplicaciones rompen demasiadas reglas criptográficas. Es más, demasiados desarrolladores de aplicaciones y bibliotecas están optando por ignorar estos problemas de manera efectiva.

Los investigadores enviaron correos electrónicos a 306 desarrolladores de aplicaciones de Android que violaban 9 o más de las reglas criptográficas: solo 18 desarrolladores respondieron y solo 8 de ellos continuaron comunicándose después del primer correo electrónico y proporcionaron comentarios útiles sobre sus hallazgos. También se pusieron en contacto con 6 desarrolladores de populares bibliotecas de Android y recibieron respuestas de 2 de ellos.

Los investigadores optaron por no revelar los nombres de las aplicaciones y bibliotecas vulnerables porque temen que la información beneficie a los atacantes, pero compartieron lo suficiente como para mostrar que estos problemas afectan a todo tipo de aplicaciones: desde la transmisión de medios y las aplicaciones de periódicos, hasta los administradores de archivos y contraseñas, las aplicaciones de autenticación, las aplicaciones de mensajería, etc.

Jesus_Caceres